<template>
  <div></div>
</template>

<script>
let bool = false;
// 声明创建一个Promise的实例对象,Promise接受一个固定的回调函数
const pro = new Promise(function (resolve, reject) {
  setTimeout(() => {
    if (bool) {
      let value = "我是三秒后后台返回的值";
      // resolve代表成功,通知外部的回调函数,resolve这个函数可以把值传到外部
      resolve(value);
    } else {
      // reject代表失败,通知外部的回调函数,reject这个函数可以将错误的信息传递到外部
      reject("请求失败");
    }
  }, 3000);
});
// Promise实例对象上,有几个固定的方法,可以链式调用
// .then是固定的接受resolve返回值的方法
// 它的语法是一个接受一个回调函数,回调函数的形参,代表resolve传来的值
// .catch是固定接收reject传值的方法，一般写在链式调用的最后面
pro
  .then((val) => {
    console.log(val);
  })
  .catch((err) => {
    console.log(err);
  });
export default {};
</script>

<style>
</style>